Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HBASE-26895 on hbase shell, 'delete/deleteall' for a columnfamily is not working #4283

Merged
merged 1 commit into from
Apr 12, 2022

Conversation

eomiks
Copy link
Contributor

@eomiks eomiks commented Mar 28, 2022

HBASE-26895

on hbase shell,

'delete' or 'deleteall' for the whole columnFamily is not working properly.

hbase(main):026:0* put 'test', 'r1', 'f:1', 'a'
Took 0.0233 seconds
hbase(main):029:0> delete 'test', 'r1', 'f'
Took 0.0070 seconds
hbase(main):030:0> get 'test', 'r1'
COLUMN                                                                  CELL
 f:1                                                                    timestamp=1648114865022, value=a
1 row(s)
hbase(main):038:0> deleteall 'test', 'r1', 'f'
Took 0.0059 seconds
hbase(main):039:0> get 'test', 'r1'
COLUMN                                                                  CELL
 f:1                                                                    timestamp=1648114865022, value=a
1 row(s) 

looking inside of hbase-shell,
all delete/deleteall on hbase shell are converted to delete.addColumn/addColumns.
thus, delete/deleteall request without columnQualifier converted to 'null' qualifier deletion. (since HBASE-15616, null columnQualifier is possible)

if column && all_version
family, qualifier = parse_column_name(column)
d.addColumns(family, qualifier, timestamp)
elsif column && !all_version
family, qualifier = parse_column_name(column)
d.addColumn(family, qualifier, timestamp)

According to the description of help 'deleteall' and HBASE-9549

"Users of the shell, MapReduce, REST, and Thrift who wish to interact with an entire column family must use "family" instead of "family:" (notice the omitted ':'). Including the ':' will be interpreted as an interaction with the empty qualifier in the "family" column family."

a column expression without ':' means whole family.
so in these cases, it's deletion request for the columnFamily,
and we should use addFamily/addFamilyVersion instead of addColumn/addColumns for deletion.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 40s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
_ master Compile Tests _
+1 💚 mvninstall 2m 39s master passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 9s the patch passed
-0 ⚠️ rubocop 0m 14s The patch generated 5 new + 367 unchanged - 4 fixed = 372 total (was 371)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
_ Other Tests _
+1 💚 asflicense 0m 9s The patch does not generate ASF License warnings.
7m 5s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4283/1/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #4283
Optional Tests dupname asflicense javac rubocop
uname Linux 0b564ddcc0d4 5.4.0-1025-aws #25~18.04.1-Ubuntu SMP Fri Sep 11 12:03:04 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision master / 620e5c6
Default Java AdoptOpenJDK-1.8.0_282-b08
rubocop https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4283/1/artifact/yetus-general-check/output/diff-patch-rubocop.txt
Max. process+thread count 47 (vs. ulimit of 30000)
modules C: hbase-shell U: hbase-shell
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4283/1/console
versions git=2.17.1 maven=3.6.3 rubocop=0.80.0
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 13s Docker mode activated.
-0 ⚠️ yetus 0m 3s Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+1 💚 mvninstall 2m 29s master passed
+1 💚 javadoc 0m 12s master passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 15s the patch passed
+1 💚 javadoc 0m 10s the patch passed
_ Other Tests _
+1 💚 unit 7m 29s hbase-shell in the patch passed.
14m 53s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4283/1/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #4283
Optional Tests javac javadoc unit
uname Linux cc0abd83933b 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision master / 620e5c6
Default Java AdoptOpenJDK-1.8.0_282-b08
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4283/1/testReport/
Max. process+thread count 1478 (vs. ulimit of 30000)
modules C: hbase-shell U: hbase-shell
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4283/1/console
versions git=2.17.1 maven=3.6.3
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 27s Docker mode activated.
-0 ⚠️ yetus 0m 3s Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+1 💚 mvninstall 6m 16s master passed
+1 💚 javadoc 0m 40s master passed
_ Patch Compile Tests _
+1 💚 mvninstall 4m 33s the patch passed
+1 💚 javadoc 0m 16s the patch passed
_ Other Tests _
+1 💚 unit 8m 35s hbase-shell in the patch passed.
23m 2s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4283/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #4283
Optional Tests javac javadoc unit
uname Linux c45beb71d372 5.4.0-1025-aws #25~18.04.1-Ubuntu SMP Fri Sep 11 12:03:04 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision master / 620e5c6
Default Java AdoptOpenJDK-11.0.10+9
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4283/1/testReport/
Max. process+thread count 1545 (vs. ulimit of 30000)
modules C: hbase-shell U: hbase-shell
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4283/1/console
versions git=2.17.1 maven=3.6.3
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@Apache9 Apache9 merged commit ea9bc92 into apache:master Apr 12, 2022
Apache9 pushed a commit that referenced this pull request Apr 12, 2022
…not working (#4283)

Signed-off-by: Duo Zhang <zhangduo@apache.org>
(cherry picked from commit ea9bc92)
Apache9 pushed a commit that referenced this pull request Apr 12, 2022
…not working (#4283)

Signed-off-by: Duo Zhang <zhangduo@apache.org>
(cherry picked from commit ea9bc92)
Apache9 pushed a commit that referenced this pull request Apr 12, 2022
…not working (#4283)

Signed-off-by: Duo Zhang <zhangduo@apache.org>
(cherry picked from commit ea9bc92)
@eomiks eomiks deleted the HBASE-26895 branch April 13, 2022 06:16
vinayakphegde pushed a commit to vinayakphegde/hbase that referenced this pull request Apr 4, 2024
…not working (apache#4283)

Signed-off-by: Duo Zhang <zhangduo@apache.org>
(cherry picked from commit ea9bc92)
(cherry picked from commit 02d51b0)
Change-Id: I185acca0416be2da9d73553ad44215a270bd6a1d
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants